package org.dromara.common.core.domain.model;

import cn.hutool.core.lang.RegexPool;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Pattern;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serial;

/**
 * 三方登录对象
 *
 * @author Lion Li
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class XcxLoginBody extends LoginBody {

    @Serial
    private static final long serialVersionUID = 871901787709478340L;

    /**
     * 小程序id(多个小程序时使用)
     */
    private String appid;

    /**
     * 小程序code
     */
    @NotBlank(message = "{xcx.code.not.blank}")
    private String xcxCode;

    /**
     * 用户名（微信绑定手机号）
     */
    @Pattern(regexp = RegexPool.MOBILE, message = "手机号格式不正确")
    @NotBlank(message = "{xcx.userName.not.blank}")
    private String userName;

    /**
     * 用户昵称（微信昵称）
     */
    @NotBlank(message = "{xcx.nickName.not.blank}")
    private String nickName;

}
